/**
 * 用户 WangPeixi
 */
var table = "";
var code = "";
var role = "";
var parentCode = '';
$(function() {
	parentCode = request.QueryString("parentCode");// 点击左侧菜单传过来的按钮父节点
	code = postAsyncAjaxText("/findCodeListAndMap", null).data;
	code = eval("(" + code + ")");
	role = postAsyncAjaxText("/findUserRoleAll", null).data;
	table = $("#userList");
	initComponent();
	initCombobox();
	initGrid();// 初始化表格
	initReload();
	exportUser();
});

// 初始化时间
function initComponent() {
	// 开始时间和结束时间空间
	var curr_time = new Date();
	var strDate = curr_time.getFullYear() + "-";
	strDate += curr_time.getMonth() + 1 + "-";
	strDate += curr_time.getDate() + " 00:00:00";
	$("#startTime").datebox("setValue", strDate);
	$("#endTime").datebox("setValue", addDate(curr_time, 0) + " 23:59:59");
}

function initGrid() {
	// 权限按钮
	var param = limitButton(parentCode);
	
	table.datagrid({
		iconCls : 'icon-ok',
		pageSize : 20,
		pageList : [ 20, 40, 60, 80 ],
		striped : true,
		collapsible : false,
		remoteSort : true,// 服务器端排序
		fitColumns : true,
		singleSelect : true,
		showFooter : true,
		columns : [ [ {
			field : 'id',
			checkbox : true,
			hidden : true
		}, {
			field : 'linkman',
			title : '用户名',
			width : 80,
			rowspan : 2,
			align : 'center'
		}, {
			field : 'loginName',
			title : '昵称',
			width : 80,
			rowspan : 2,
			align : 'center'
		}, {
			field : 'phone',
			title : '手机号',
			width : 60,
			align : 'center'
		}, {
			field : 'roleId',
			title : '角色',
			width : 60,
			height : 'auto',
			rowspan : 2,
			align : 'center',
			formatter : function(value, row, index) {
				if (0 == value || null == value || undefined ==  value || '' == value) {
					return "--";
				}
				for ( var i in role) {
					if (role[i].id == value) {
						return role[i].name;
					}
				}
				return "--";
			}
		}, {
			field : 'belongType',
			title : '用户类型',
			width : 60,
			rowspan : 2,
			align : 'center',
			formatter : function(value, row, index) {
				return code['026'][value];
			}
		}, {
			field : 'status',
			title : '状态',
			width : 60,
			rowspan : 2,
			align : 'center',
			formatter : function(value, row, index) {
				return code['008'][value];
			}
		},{
			field : 'lastLoginIp',
			title : '最后一次登入ip',
			width : 80,
			rowspan : 2,
			align : 'center',
			formatter : function(value, row, index) {
				if (value) {
					return value;
				} else {
					return "--";
				}
			}
		}, {
			field : 'lastLoginTime',
			title : '最后一次登入时间',
			width : 80,
			rowspan : 2,
			align : 'center',
			formatter : function(value, row, index) {
				return (new Date(row.lastLoginTime)).Format("yyyy-MM-dd hh:mm:ss");
			}
		}, {
			field : 'created',
			title : '注册时间',
			width : 60,
			rowspan : 2,
			align : 'center',
			formatter : function(value, row, index) {
				return (new Date(row.created)).Format("yyyy-MM-dd hh:mm:ss");
			}
		} ] ],
		pagination : true,
		rownumbers : true,
		toolbar : param,
		onBeforeLoad : function(param) {
			var linkman = $('#linkman').val();
			var loginName = $('#loginName').val();
			var phone = $('#phone').val();
			var belongType = $('#belongType').datebox("getValue");
			var status = $('#status').datebox("getValue");
			var roleId = $('#roleId').datebox("getValue");
			var startTime = $('#startTime').datebox("getValue");
			var endTime = $('#endTime').datebox("getValue");

			var parameter = new Object();
			parameter.page = param.page;
			parameter.rows = param.rows;
			parameter.loginName = loginName;
			parameter.linkman = linkman;
			parameter.phone = phone;
			parameter.belongType = belongType;
			parameter.status = status;
			parameter.roleId = roleId;
			parameter.startTime = startTime;
			parameter.endTime = endTime;
			var data = postAsyncAjax("/findUserByPage", parameter);
			//所属用户
			var dataGridData = new Object();
			dataGridData.rows = data.rows;// 总记录数
			dataGridData.total = data.total;// 总记录数
			table.datagrid('loadData', dataGridData);
		}
	});
	
}

/** 添加按钮执行操作 */
addBean = function(uri) {
	var url = uri + "?id=1";
	topWindow(url, "新增", {
		width : 810,
		height : 530
	});
}

/** 修改按钮执行操作 */
updateBean = function(uri) {
	var rows = table.datagrid('getSelected');
	if (null == rows) {
		$.messager.alert("消息提示", "至少选择一条记录", "warning");
		return;
	}
	var url = uri + "?id=" + rows.id;
	topWindow(url, "修改", {
		width : 810,
		height : 530
	});
}



/** 删除按钮执行操作 */
delBean = function(uri) {
	var rows = table.datagrid('getSelected');
	$.messager.confirm('确认对话框', '确认删除？', function(r) {
		if (r) {
			var data = postAsyncAjax(uri, {
				"id" : rows.id
			});
			if (data.returnCode == "00") {
				top.showMessage("删除成功!");
				gridReload("userList");
			} else {
				top.showMessage("删除失败!");
			}
		}
	});
}

// 用户类型 下拉菜单
function initCombobox() {
	// 初始化下拉菜单
	$('#belongType').combobox({
		editable : false, // 不可编辑状态
		cache : false,
		panelHeight : 200,// 自动高度适合
		valueField : 'code',
		textField : 'name',
		formatter : function(row) {
			return row.name;
		}

	});
	// 数据放入下拉菜单
	var ut = postAsyncAjax("/findCodebySortCode?sortCode=026", null);// 获取用户类型
	if (ut.data == null)
		ut.data = [];
	ut.data.unshift({
		"code" : "",
		"name" : "--请选择--"
	});
	
	$("#belongType").combobox("clear");
	$("#belongType").combobox("loadData", ut.data);

	// 角色
	$('#roleId').combobox({
		editable : false, // 不可编辑状态
		cache : false,
		panelHeight : 200,// 自动高度适合
		valueField : 'id',
		textField : 'name'
	});
	// 数据放入下拉菜单
	var ut = postAsyncAjax("/findUserRoleAll", null);// 获取角色
	if (ut.data == null)
		ut.data = [];
	ut.data.unshift({
		"id" : "",
		"name" : "--请选择--"
	});
	$("#roleId").combobox("clear");
	$("#roleId").combobox("loadData", ut.data);
	
	
	// 初始化状态下拉菜单
	$('#status').combobox({
		editable : false, // 不可编辑状态
		cache : false,
		panelHeight : 200,// 自动高度适合
		valueField : 'code',
		textField : 'name'
	});
	// 数据放入下拉菜单
	var ut = postAsyncAjax("/findCodebySortCode", {"sortCode":"008"});// 获取状态
	if (ut.data == null)
		ut.data = [];
	
	ut.data.unshift({"code" : "","name" : "--请选择--"});
	$("#status").combobox("clear");
	$("#status").combobox("loadData", ut.data);

}

initReload = function() {
	$("#btn").click(function() {
		table.datagrid("reload");
	});

	
	$("#btncancel").click(function() {
		$('#searchForm').form('reset');

		// 开始时间和结束时间空间
		var curr_time = new Date();
		var strDate = curr_time.getFullYear() + "-";
		strDate += curr_time.getMonth() + 1 + "-";
		strDate += curr_time.getDate() + " 00:00:00";
		$("#startTime").datebox("setValue", strDate);
		$("#endTime").datebox("setValue", addDate(curr_time, 0) + " 23:59:59");

		table.datagrid("reload");
	});

}

//用户导出
exportUser = function(){
	$("#export").click(function() {
		var linkman = $('#linkman').val();
		var loginName = $('#loginName').val();
		var phone = $('#phone').val();
		var belongType = $('#belongType').datebox("getValue");
		var status = $('#status').datebox("getValue");
		var roleId = $('#roleId').datebox("getValue");
		var startTime = $('#startTime').datebox("getValue");
		var endTime = $('#endTime').datebox("getValue");
		
		window.location.href = "/exportUser?startTime="+ startTime + "&endTime="+ endTime + "&linkman=" + linkman + 
		"&loginName=" + loginName +  "&belongType="+belongType + "&status="+status + "&roleId=" +roleId + 
		"&phone=" + phone;
	})
}
